#ifndef SR_FILE_H_INCLUDED
#define SR_FILE_H_INCLUDED
#include <string>

typedef struct __FileInfo{
    char pathname[256];
    char filename[64];
    size_t filesize;
    int fileKey;
    char md5[32 + 1];
} FileInfo;

typedef struct __FileContent{
    int key;
    int len;
    char content[4096];
} FileCon;

enum __enumFileStatus{
    FS_FILE_WAIT = 0,
    FS_FILE_WAITFORSEND,
    FS_FILE_SENDING,
    FS_FILE_CANCEL,
    FS_FILE_CLOSE,
    FS_FILE_END
};

enum __FileDirection{
    FD_FILE_SEND = 0,
    FD_FILE_RECV
};

typedef struct __FileStatus{
    FILE *pFILE;
    int status;
    int direction;
    FileInfo fileInfo;
    long curSize;
} FileStatus;


#endif // SR_FILE_H_INCLUDED
